package com.xinqi.modules.stats.studyanalysis.service.impl;

import com.xinqi.common.mybatis.data.service.impl.BaseServiceImpl;
import com.xinqi.modules.stats.studyanalysis.domain.CourseStudentAnalysisEntity;
import com.xinqi.modules.stats.studyanalysis.mapper.CourseStudentAnalysisMapper;
import com.xinqi.modules.stats.studyanalysis.service.CourseStudentAnalysisService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;


/**
 * 生成统计汇总信息
 * @author dzy
 */
@Service
@RequiredArgsConstructor
public class CourseStudentAnalysisServiceImpl extends BaseServiceImpl<CourseStudentAnalysisMapper, CourseStudentAnalysisEntity> implements CourseStudentAnalysisService {


    private final AsyncStudentAnalysisService asyncStudentAnalysisService;

    /**
     * 删除生成统计数据
     * @description 目前：定时时间 每晚12点生成一次
     * @Author dzy
     */
    @Override
    public void clearStudentAnalysis(){
        // 删除已生成数据
        this.baseMapper.clearCourseStudentAnslysisList();
    }

    /**
     * 重新生成统计数据
     * @param classId 班级ID
     * @description 目前：定时时间 每晚12点生成一次
     * @Author dzy
     */
    @Override
    public void createStudentAnalysis(Long classId) {
        // 删除原有数据
        this.baseMapper.clearCourseStudentAnslysisListByClassId(classId);
        // 生成新数据
        asyncStudentAnalysisService.asyncStudentAnalysis(classId);
    }

}
